1. Field of the Invention
The invention relates generally to networked storage systems including Serial Attached SCSI (“SAS”) initiator devices and Serial Advanced Technology Attached (“SATA”) target devices and more specifically relates to improved designs of the SATA device to incorporate minimal SAS capability to obviate the need for a SAS expander intermediate the initiator and target devices.
2. Discussion of Related Art
In the storage networking arts, it has become common to utilize high speed serial interconnections between storage devices (e.g., disk drives) and associated controller devices (e.g., storage subsystem controllers and/or host system adapters). High speed serial interconnection utilizes a simpler, lower cost cabling as compared to prior wide, parallel bus interconnect architectures. In particular, SAS has been widely adopted as a preferred high speed serial interconnection for storage devices and associated controllers. The SAS standards (publicly available for example at www.t10.org) allow for utilization of the long standardized SCSI command set while utilizing simpler, lower cost high speed serial cabling and associated protocols. SATA provides a different command structure that may also be transmitted utilizing high speed SAS interconnections between appropriate controlling devices and the SATA storage devices (e.g., disk drives).
In one particularly popular configuration, SATA exchanges may be transmitted over a SAS high speed serial interconnection utilizing the SATA tunneling protocol (“STP”) specified within the SAS standards. STP utilizes particular sequences of SAS directives to initially establish the desired logical interconnection. Once the STP protocol establishes the SAS logical interconnection between a SAS initiator and the SATA device, all subsequent exchanges utilize the SATA command structure for exchange of commands, status, and data therebetween.
Present day SATA devices strive to lower cost and complexity of the device in a number of respects. In particular, present SATA devices do not support any SAS/STP protocol exchanges required to initially establish a desired SAS interconnection. Rather, the SAS specifications provide for connection of a SAS initiator to a SATA target device through an intermediate SAS expander. The SAS expander interacts with the SAS initiator on a port of the expander to initially establish the desired SAS/STP connection to an identified SATA device coupled to another port of the SAS expander. Once the SAS initiator and SAS expander have successfully established the desired SAS/STP connection to the identified SATA device, all further exchanges between the SAS initiator and SATA device utilize standard SATA communication and command protocols through passing through the SAS expander.
The requirement of providing a SAS expander in all contexts gives rise to a problem in that a SAS expander is a relatively complex, costly component of a storage network. In particular, in a manufacturing or engineering test environment testing the design of a customized SATA device, the manufacturer's test environment must necessarily include a costly, complex SAS expander to effectuate required testing.
Another approach is to integrate fully functional SAS/STP target logic within the customized SATA device to allow the SATA device to directly communicate with the SAS initiator in establishing the desired interconnection. However, such a fully functional SAS/STP logic component adds significant cost and complexity to the SATA device control logic without providing substantial benefit to the overall system architecture. Such an integration of complex circuitry with the SATA device is costly both in terms of additional circuit die area as well as complexity of systems software utilizing the SATA device. The system software must be adapted to appropriately configure a fully functional SAS/STP component within the SATA device though the SAS/STP protocols are only briefly utilized to establish the SAS interconnection.
It is evident from the above discussion that a need exists for an improved circuit, system, and associated methods to permit establishment of a required SAS/STP connection with SATA devices without the need for a SAS expander intermediate the SAS initiator and enhanced SATA device.